;============================================================================ ; Aufbau des Ausgabe-Format-Strings zur Ausgabe formatierter Daten über die ; Funktion VSPrintF() dieser Library: ; ; Jeder Format-String besteht aus beliebigen Zeichen, die unverändert über- ; nommen werden, sowie beliebig vielen Formatkommandos, die jeweils zur Kon- ; vertierung eines zugehörigen übergebenen Arguments (in der Reihenfolge des ; Auftretens) dienen. Jedes Formatkommando hat den folgenden Aufbau: ; ; %[flags][width[.limit]][size]type ; ; Bestandteile in eckigen Klammern sind wahlfrei. ; ; Bestandteile: ; ¯¯¯¯¯¯¯¯¯¯¯¯¯ ; flags ; '-' zur Linksjustierung ; '+' zur Ausgabe auch eines positiven Vorzeichens bei Zahlen ; '0' zur Ausgabe führender Nullen bei Zahlen ; '#' zum Voranstellen von '0x' bei hexadezimalen und '0' bei oktalen ; Zahlen sowie Ausgeben abschließender Nullen, falls für Type 'g' ; oder 'G' angegeben wird. ; ; width ; Feldbreite als dezimale Ziffernfolge oder '*'; in diesem Fall wird der ; Wert als Argument des Typs LONG an entsprechender Stelle übergeben. ; ; limit ; Genauigkeit als dezimale Ziffernfolge oder '*'; in diesem Fall wird der ; Wert als Argument des Typs LONG an entsprechender Stelle übergeben, ; der Wert beschreibt die maximale Anzahl von Zeichen bei Ausgabe einer ; Zeichenkette, die minimale Anzahl von Ziffern einer ganzzahligen Ausgabe ; oder die Anzahl der Dezimalstellen einer Fließkommaausgabe. ; ; size ; Größenangabe des übergebenen zugehörigen Arguments: ; ; 'h' oder 'l' für ein Argument der Größe 32-Bit (Typ LONG od. ULONG) ; 'L' für ein Argument der Größe 64-Bit, wobei zuerst die unteren ; 32-Bit, danach die oberen 32-Bit angegeben werden müssen. Der ; Typ ist VLONG (extra.lib) bzw. LONG LONG (C/C++) ; ; type ; Typangabe (Interpretation) des Arguments: ; ; 'd' oder 'i' zur Ausgabe einer vorzeichenbehafteten Dezimalzahl, das ; zugehörige Argument ist vom Typ LONG ; ; 'o' zur Ausgabe einer vorzeichenlosen Oktalzahl, das zugehörige Argument ; ist vom Typ LONG oder ULONG ; ; 'x' zur Ausgabe einer vorzeichenlosen Hexadezimalzahl mit Kleinbuchstaben, ; das zugehörige Argument ist vom Typ LONG oder ULONG ; ; 'X' zur Ausgabe einer vorzeichenlosen Hexadezimalzahl mit Großbuchstaben, ; das zugehörige Argument ist vom Typ LONG oder ULONG ; ; 'u' zur Ausgabe einer vorzeichenlosen Dezimalzahl, das zugehörige Argument ; ist vom Typ ULONG ; ; 'c' zur Ausgabe eines Zeichens, das zugehörige Argument ist vom Typ LONG ; und wird in UBYTE (UCHAR) konvertiert ; ; 's' zur Ausgabe einer Zeichenkette, die mit einem Nullbyte abgeschlossen ; ist, das zugehörigen Argument ist vom Typ STRPTR (APTR) ; ; 'f' zur Ausgabe einer Fließkommazahl in nichtexponentieller Darstellung, ; das zugehörige Argument ist vom Typ DOUBLE ; ; 'e' zur Ausgabe einer Fließkommazahl in exponentieller Darstellung mit ; kleinem 'e', das zugehörige Argument ist vom Typ DOUBLE ; ; 'E' zur Ausgabe einer Fließkommazahl in exponentieller Darstellung mit ; großem 'E', das zugehörige Argument ist vom Typ DOUBLE ; ; 'g' zur Ausgabe einer Fließkommazahl je nach Exponent in nichtexpo- ; nentieller oder exponentieller Darstellung mit kleinem 'e', das zu- ; gehörige Argument ist vom Typ DOUBLE ; ; 'G' zur Ausgabe einer Fließkommazahl je nach Exponent in nichtexpo- ; nentieller oder exponentieller Darstellung mit großem 'E', das zu- ; gehörige Argument ist vom Typ DOUBLE ; ; 'p' zur Ausgabe einer hexadezimalen Speicheradresse, das zugehörige ; Argument ist vom Typ APTR (ULONG) ; ; 'n' zur Speicherung der Anzahl der bisher von diesem Funktionsaufruf ; ausgegebenen Zeichen in der LONG-Variablen, auf die das Argument vom ; Typ APTR zeigt dieses Argument wird nicht mit im Ausgabe-String ; ausgegeben, es bewirkt lediglich o.g. Speicherung ; ; '%' zur Ausgabe eines Prozentzeichens ;============================================================================